Dynamic Structural Operational Semantics

نویسندگان

  • Christian Johansen
  • Olaf Owe
چکیده

We introduce Dynamic SOS as a framework for describing semantics of programming languages that include dynamic software upgrades. Dynamic SOS (DSOS) is built on top of the Modular SOS of P. Mosses, with an underlying category theory formalization. The idea of Dynamic SOS is to bring out the essential differences between dynamic upgrade constructs and program execution constructs. The important feature of Modular SOS (MSOS) that we exploit in DSOS is the sharp separation of the program execution code from the additional (data) structures needed at run-time. In DSOS we aim to achieve the same modularity and decoupling for dynamic software upgrades. This is partly motivated by the long term goal of having machine-checkable proofs for general results like type safety. We exemplify Dynamic SOS on two languages supporting dynamic software upgrades, namely the C-like PROTEUS, which supports updating of variables, functions, records, or types at specific program points, and CREOL, which supports dynamic class upgrades in the setting of concurrent objects. Existing type analyses for software upgrades can be done on top of DSOS too, as we illustrate for PROTEUS. A second contribution is the definition of a general encapsulating construction on Modular SOS useful in situations where a form of encapsulation of the execution is needed. We show how to apply this in the setting of concurrent object-oriented programming with active objects and asynchronous method calls.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

An Operational Semantics for Foops Extended Abstract

FOOPS is a functional, concurrent, object-oriented language. We give a structural operational semantics for FOOPS, considering features such as: classes of objects with associated methods and attributes, object identity, dynamic object creation and deletion, overloading, polymorphism, inheritance with overriding, concurrency, nondeterminism and atomic execution.

متن کامل

A Formal Executable Semantics for Java

Some of the main features of the Java language are that it is object-oriented and multi-threaded. This article presents a formal semantics of a large subset of Java, including inheritance, dynamic linking and multi-threading. To describe the object-oriented features, we use a big-step semantics. The semantics of the concurrency is deened in a small-step semantics, using a structural operational...

متن کامل

Dynamic sequent calculus for the logic of Epistemic Actions and Knowledge

Dynamic Logics (DLs) form a large family of nonclassical logics, and perhaps the one enjoying the widest range of applications. Indeed, they are designed to formalize change caused by actions of diverse nature: updates on the memory state of a computer, displacements of moving robots in an environment, measurements in models of quantum physics, belief revisions, knowledge updates, etc. In each ...

متن کامل

K Semantics for Dynamic Software Architectures

Recently, several research works propose multi formalisms based models to define rigorously the static and dynamic concepts of a software architecture. Further, these models are used to assess the architectural quality and to predict final system characteristics. The objective of this paper is to address both structural and behavioral viewpoints, involved in software architecture specification,...

متن کامل

Programming Research Group AN OPERATIONAL SEMANTICS FOR FOOPS

FOOPS is a concurrent object-oriented language. We give a structural operational semantics for FOOPS, considering features such as classes of objects with associated methods and attributes, object identity, dynamic object creation and deletion, overloading, polymorphism, inheritance with overriding, concurrency, nondeterminism, atomic execution, evaluation of expressions as background processes...

متن کامل

Non-interleaving Operational Semantics for the Pi-calculus – technicalities

We provide a non-interleaving operational semantics for the pi-calculus as asynchronous transition systems, which generalizes the standard interleaving structural operational semantics and unfolds to standard, stable prime event structures. We follow the approach taken by Mukund and Nielsen in providing non-interleaving semantics for CCS by infering the so-called prefixing (structural or subjec...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1612.00666  شماره 

صفحات  -

تاریخ انتشار 2016